85 research outputs found

    CAN Fieldbus Communication in the CSP-based CT Library

    Get PDF
    In closed-loop control systems several realworld entities are simultaneously communicated to through a multitude of spatially distributed sensors and actuators. This intrinsic parallelism and complexity motivates implementing control software in the form of concurrent processes deployed on distributed hardware architectures. A CSP based occam-like architecture seems to be the most convenient for such a purpose. Many, often conflicting, requirements make design and implementation of distributed real-time control systems an extremely difficult task. The scope of this paper is limited to achieving safe and real-time communication over a CAN fieldbus for an\ud existing CSP-based framework

    On properties of modeling control software for embedded control applications with CSP/CT framework

    Get PDF
    This PROGRESS project (TES.5224) traces a design framework for implementing embedded real-time software for control applications by exploiting its natural concurrency. The paper illustrates the stage of yielded automation in the process of structuring complex control software architectures, modeling controlled mechatronic systems and designing corresponding control laws, simulating them, generating control code out of simulated control strategy and implementing the software system on a (embedded) computer. The gap between the development of control strategies and the procedures of implementing them on chosen hardware targets is going to be overcome

    CSP and Real-Time: Reality or Illusion?

    Get PDF

    A structuring mechanism for embedded control systems using co-modelling and co-simulation

    Get PDF
    In most embedded control system (ECS) designs, multiple engineering disciplines and various domain-specific models are involved, such as embedded software models in discrete-event (DE) domain and dynamic plant model in continuous-time (CT) domain. In this paper, we advocate collaborative modelling and co-simulation to verify different aspects of the system as a whole before implementation. This paper proposes a development approach and structuring mechanism for CT-intensive ECS designs using co-modelling and co-simulation techniques. Based on this approach, an integrated co-model can be developed and refined using different domain-specific languages and tools. Influences from one domain to the other can be simulated via co-simulation and analysed in both perspectives. Our structuring and development process has been applied to a mobile robot using this co-simulation technique. We have experienced that structuring the co-modelling process allows us to produce co-models an co-simulations effectively. Future work is on checking for model inconsistencies during collaboration, and provide approaches to deal with this

    Communicating Java Threads

    Get PDF
    The incorporation of multithreading in Java may be considered a significant part of the Java language, because it provides udimentary facilities for concurrent programming. However, we belief that the use of channels is a fundamental concept for concurrent programming. The channel approach as described in this paper is a realization of a systematic design method for concurrent programming in Java based on the CSP paradigm. CSP requires the availability of a Channel class and the addition of composition constructs for sequential, parallel and alternative processes. The Channel class and the constructs have been implemented in Java in compliance with the definitions in CSP. As a result, implementing communication between processes is facilitated, enabling the programmer to avoid deadlock more easily, and freeing the programmer from synchronization and scheduling constructs. The use of the Channel class and the additional constructs is illustrated in a simple application

    A majority vote:modelled by asynchronous readers and asynchronous writers

    Get PDF
    Reading and writing is modelled in CSP using actions containing the symbols ? and !. These reading actions and writing actions are synchronous, and there is a one-to-one relationship between occurrences of pairs of these actions. In the CPA conference 2017, we introduced the extended half-synchronous alphabetised parallel operator X ⇕ Y , which disconnects the writing to and reading from a channel in time; the reading processes are divided into sets which are set-wise asynchronous, but intra-set-wise synchronous, giving full flexibility to the reads. In this paper, we allow multiple writers to write to the same channel set-wise asynchronously, but intra-set-wise synchronously and we study the impact on our (Extended) Vertex Removing Synchronised Product. The advantages we accomplish are that the extension of X ⇕ Y gives more flexibility by indexing the writing actions and the reading actions, leading to a straightforward majority vote design. Furthermore, the extension of X ⇕ Y preserves the advantages of the X ⇕ Y operator

    A communicating Thread -CT- case study: JIWY

    Get PDF
    • …
    corecore